return state & CLUTTER_MODIFIER_MASK;
}
+/**
+ * shell_write_soup_message_to_stream:
+ * @stream: a #GOutputStream
+ * @message: a #SoupMessage
+ * @error: location to store GError
+ *
+ * Write a string to a GOutputStream as binary data. This is a
+ * workaround for the lack of proper binary strings in GJS.
+ */
+void
+shell_write_soup_message_to_stream (GOutputStream *stream,
+ SoupMessage *message,
+ GError **error)
+{
+ SoupMessageBody *body;
+
+ body = message->response_body;
+
+ g_output_stream_write_all (stream,
+ body->data, body->length,
+ NULL, NULL, error);
+}
+
/**
* shell_write_string_to_stream:
* @stream: a #GOutputStream
#include <gio/gio.h>
#include <clutter/clutter.h>
+#include <libsoup/soup.h>
G_BEGIN_DECLS
ClutterModifierType
shell_get_event_state (ClutterEvent *event);
+void shell_write_soup_message_to_stream (GOutputStream *stream,
+ SoupMessage *message,
+ GError **error);
+
gboolean shell_write_string_to_stream (GOutputStream *stream,
const char *str,
GError **error);